/*G4 �� 1
�� ������ ����
� ����� .txt ���� ��� ����� �� ����� 100 �������� ������, ����������� ����� ��������. ������� ������ �� ������� ����, ������� ����������� � ����� ������ ������ ���� ���. ����������� �� ����� ������ � ���� .txt � ������������������ �������. 

������ �� �����: 		��� ����� �� ��������� ���������� ���� ����� ������. ������ ������� ����� �� ������ 100 ��������. 
������ �� ������: 	��������� ���������� ����� ����� ������. 

������ �1
������ �� �����: 		hello world 
������ �� ������: 	o 


������ �� �����: 		aabcd bcef 
������ �� ������: 	b c 

 
*/




#include <stdio.h>
#include <locale.h>

#define SIZE 100

void InStrings(char first[], char second[])//������ ��� �����
{
    FILE *in;
    in = fopen("input_1.txt","r");
    fscanf(in,"%s",first);
    fscanf(in,"%s",second);
    fclose(in);

return;
}

int Single(char str[],int n)//��������� ����������� ��������� � �����
{
    int flag=0;
    for (int j=0;str[j]!='\0';j++)
        {
            if (str[n]==str[j])
            {
                flag++;
            }
        }
    if (flag==1) {return 1;}
    else {return 0;}
}


void Compare(char unsort[], char first[], char second[])//���������, ��� ������ ���� ��� � ������ �����
{
    int k=0;
    for (int i=0;first[i]!='\0';i++)
    {
        if (Single(first, i))
        {
            for (int j=0;second[j]!='\0';j++)
            {
                if ((first[i]==second[j])&Single(second,j))
                {
                    unsort[k]=first[i];
                    k++;
                }
            }
        }
    }
    return;
}

void Sort(char str[]) //��������� �� �������� (� ������������������ �������)
{
    char temp, *sorted;
    int flag;
    while(*str)
    {
        flag=1;
        sorted=str;
        while(*(sorted+1))
        {
            if (*sorted>*(sorted+1))
            {
                temp=*(sorted+1);
                *(sorted+1)=*sorted;
                *sorted=temp;
                flag=0;
            }
            sorted++;
        }
        str++;
        if(flag) return;
    }
    return;
}

void Output(char str[]) //������� � ����
{
    FILE *out;
    out = fopen("output_1.txt","w");
    while(*str)
    {
        fprintf(out,"%c ", *str);
        str++;
    }
    fclose(out);
return;
}


int main(int argc, char **argv)
{
    setlocale(LC_ALL, "Rus");
    char first[SIZE]={0}, second[SIZE]={0},output[SIZE]={0};
    printf("������� ������ �� ����� 'input_1.txt', ����� � ���� 'output_1.txt'");
    InStrings(first,second);
    // printf("%s %s \n",first,second);
    Compare(output,first,second);
    // printf("%s \n",output);
    // printf("%d \n",sizeof(output));
    Sort(output);
    // printf("%s \n", output);
    Output(output);
    return 0;
}